// pages/home/home.js

Page({

  /**
   * 页面的初始数据
   */
  data: {
    dl: 0,
    isdone: true,
    src: '',
    token: '',
    faceinfo: {},
    isbox:false,
    faceMap : {
      emotion: {
        angry: '愤怒',
        disgust: '厌恶',
        fear: '恐惧',
        happy: '高兴',
        sad: '伤心',
        surprise: '惊讶',
        neutral: '无表情',
        pouty: '撅嘴',
        grimace: '鬼脸'
      },
      expression: {
        none: '不笑', smile: '微笑', laugh: '大笑'
      },
      gender: {
        male: '男生', female: '女生'
      },
      glasses: {
        none: '无眼镜', common: '普通眼镜', sun: '墨镜'
      }
    }
   
  },
  //  翻转摄像头
  reverse() {
    this.setData({
      isdone: !this.data.isdone
    })
  },
  // 拍照
  takePhoto() {
    const ctx = wx.createCameraContext()
    ctx.takePhoto({
      quality: 'high',
      success: (res) => {
        this.setData({
          src: res.tempImagePath
        }, () => {
          this.getFaceInfo()
        })
      }
    })
  },
  // 重新选择照片
  changer() {
    this.setData({
      src: '',
      isbox:false
    })
  },

  // 测颜值函数
  getFaceInfo() {
    // 转换base64
    var files = wx.getFileSystemManager().readFileSync(
      this.data.src, 'base64'
    )
   
    wx.request({
      method: 'post',
      header: {
        'Content-Type': 'application/json'
      },
      url: 'https://aip.baidubce.com/rest/2.0/face/v3/detect?access_token=' + this.data.token,
      data: {
        image: files,
        image_type: 'BASE64',
        face_field: 'age,beauty,expression,gender,glasses,emotion'
      },
      success: (res) => {
       this.setData({
         faceinfo:res.data.result.face_list[0],
         isbox:true
       })
      }
    });
   
  },

  // 在相册选择照片
  chooseMedia() {
    wx.chooseImage({
      count: 1,
      sizeType: ['original'],
      sourceType: ['album'],
      success: (res) => {
        // tempFilePath可以作为img标签的src属性显示图片
        this.setData({
          src: res.tempFilePaths[0]
        }, () => {
          this.getFaceInfo()
        })

      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    wx.request({
      url: 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=avmiOfYTB85DUlqRXSX6mgn4&client_secret=wLxDtoSWBRq3K3BGHPsuGvnqGKg8zbje',
      method: 'post',
      success: (res) => {
        this.data.token = res.data.access_token
      }
    })




  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {
    const {
      screenHeight: dl
    } = wx.getSystemInfoSync()
    this.setData({
      dl
    })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  }
})